1. Field of the Invention
The present invention relates generally to the field of wireless communication of voice and data information. More particularly, the present invention relates to correction of errors in bits transmitted over radio frequency ("RF") channels, and has specific application to cellular telephone systems.
2. Background of the Related Art
In North America, cellular systems using analog voice must meet the Advanced Mobile Phone System ("AMPS") standard, now defined by the Electronics Industries Associate ("EIA") specification EIA-553. Analog systems typically use analog frequency modulation ("FM") for speech transmission and frequency shift keying ("FSK") for signalling (i.e. control messages). In the United States, the AMPS uses frequency ranges of 824-849 MHz for mobile station transmissions, and 869-894 MHz for base station transmissions. The channel spacing is 30 KHz, and the number of channels is 832.
Cellular systems using digital communications must meet the EIA/TIA North American digital cellular system ("TDMA") standard. The EIA/TIA IS-54 is the standard deployed in the cellular markets in the United States. Other standards such as the EIA/TIA IS-95 and IS-136 are also used. The IS-54 uses a bit rate of 48.6 kbps, a bandwidth of 30 KHz, and a time slot duration of 6.7 ms. Each 30-KHz bandwidth can support up to three users simultaneously (using TDMA access scheme). Each user transmits voice information at 7.95 kbps using vector sum excited linear predictive ("VSELP") speech coder (13.0 kbps with error code protection). Equivalent international digital telephone system standards include GSM (for Europe) and PDC (for Japan).
Although they have different standards, both analog and digital systems still share a common communication medium by using RF signals to carry their respective information. One of the inherent characteristics of radio channels is that signal fading due to time-variant multipath propagation often causes the signal to fall below the noise level, thus resulting in a large number of errors (burst errors). One effective method of dealing with burst errors in a channel has been to interleave the coded data. Interleaving spreads out the data in time so that errors within a codeword appear to be independent. In other words, the output of the channel encoder is interleaved over two separate time slots with the speech data of adjacent frames. While it has proven to be helpful in reducing the probability of erred bits, interleaving is by no means a complete defense in combatting the adverse effects of multipath fading.
Another method applied in an effort to overcome the multipath fading effects is the use of a bit error correction method. One such error correction method is the so-called majority vote. In a typical majority vote method, a bit is transmitted n-times over an RF channel from a transmit station (e.g. base station) to a receive station (e.g. mobile station). At the receive station, the true logical state of the bit is determined by simply taking the majority of the repeated bits. If, for example, a bit having a logical state of "1" is transmitted five times, and the corresponding received bits have logical states of: 1, 1, 1, 0, and 0, then, based on the majority vote, the true logical state of the received bit is determined to be "1." The problem with this basic approach is the time delay imposed upon each transmitted message due to the necessary processing time. More particularly, the basic majority vote method lacks the ability to process a number of different original bits simultaneously. Hence, the basic approach fails to provide a method to efficiently utilize a typical n-bit (e.g. 16 or 32) microprocessor. Instead, an n-bit microprocessor processes each set of repeat bits sequentially using a multiple number of clock cycles. Therefore, there is a need in the technology to error-correct and process a plurality of different original bits over wireless communication channels simultaneously. The method for accomplishing this form of error correction should implement a majority vote algorithm while maintaining an acceptable bit processing speed and microprocessor efficiency.